import java.util.*;
import java.text.*;


public class DateMethodDemo {
    public static void main(String[] args)  {
        //使用format()方法将日期转为指定格式的文本
        Date d=new Date();
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
        String today=sdf.format(d);
        System.out.println(today);

        //使用parse()方法将文本转换为日期
        String day2="2018年02月14日 21:48:30";
        SimpleDateFormat df=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
        //调用SimpleDateFormat对象的parse（）方法时可能出现转换异常，即ParseException,因此需要处理异常。
        try {
            Date date=df.parse(day2);
            System.out.println(day2+" 字符串转化日期后为："+date);

        } catch (ParseException e) {
            e.printStackTrace();
        }

        System.out.println("———————————DATE类实例———————————");
        String strDemo="2014年06月11日 10时33分09秒";
        SimpleDateFormat sdfDemo=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
        SimpleDateFormat sdfDemo2=new SimpleDateFormat("yyyy/MM/dd HH:mm");
        SimpleDateFormat sdfDemo3=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        try {
            Date dateDemo=sdfDemo.parse(strDemo);
            System.out.println(sdfDemo.format(dateDemo));
            System.out.println(sdfDemo2.format(dateDemo));
            System.out.println(sdfDemo3.format(dateDemo));
            System.out.println(dateDemo);

        } catch (ParseException e) {
            e.printStackTrace();
        }
        /**
         * date类不建议使用，更推荐使用Calendar
         */
        System.out.println("———————————Calendar类———————————");
        Calendar c=Calendar.getInstance();
        int year=c.get(Calendar.YEAR);
        int month=c.get(Calendar.MONTH)+1;//获取月份，0表示1月
        int day=c.get(Calendar.DAY_OF_MONTH);
        int hour=c.get(Calendar.HOUR_OF_DAY);
        int minute=c.get(Calendar.MINUTE);
        int second=c.get(Calendar.SECOND);
        System.out.println("Calender获取时间："+year+"/"+month+"/"+day+" "+hour+":"+minute+":"+second);
        Date dateCal=c.getTime();
        String calStr=sdf.format(dateCal);
        Long timeToltal=c.getTimeInMillis();//获取Calendar的时间值，毫秒数
        System.out.println(dateCal+" 格式后： "+calStr);
        System.out.println(timeToltal);

    }
}
